Does bitcoind generate address using the same private key from wallet.dat? When I run:

bitcoin-cli getnewaddress


My bitcoin node returns me a brand new address. If I send BTC to this address, does the payment go to my main wallet.dat wallet (address generated from old/same private key). Or does bitcoind generate a new wallet/private key?
A wallet is not a single private key; it is an ever-growing collection of private keys.  Each address has a private key stored in the wallet.  Each time a new address is generated, so is a new private key.  This is even true for HD wallets, albeit the private keys are generated and stored differently.